/**
 * 给你一个字符串text，你需要使用 text 中的字母来拼凑尽可能多的单词"balloon"（气球）。
 * 字符串text 中的每个字母最多只能被使用一次。请你返回最多可以拼凑出多少个单词"balloon"。
 * <p>
 * 示例 1：
 * 输入：text = "nlaebolko"
 * 输出：1
 * <p>
 * 示例 2：
 * 输入：text = "loonbalxballpoon"
 * 输出：2
 * <p>
 * 示例 3：
 * 输入：text = "leetcode"
 * 输出：0
 * <p>
 * 提示：
 * 1 <= text.length <= 10^4
 * text全部由小写英文字母组成
 * <p>
 * 来源：力扣（LeetCode）
 * 链接：https://leetcode-cn.com/problems/maximum-number-of-balloons
 * 著作权归领扣网络所有。商业转载请联系官方授权，非商业转载请注明出处。
 */
public class Q01189s {
    public int maxNumberOfBalloons(String text) {
        int[] cs = new int[1 + 'z'];
        for (int i = 0; i < text.length(); i++) {
            cs[text.charAt(i)]++;
        }
        return Math.min(Math.min(cs['b'], Math.min(cs['a'], cs['n'])), Math.min(cs['l'], cs['o']) / 2);
    }
}
